// vuex的文件夹比较复杂，所以我们单独创建stroe的文件夹，

// 引入文件
// 引入vue
import Vue from "vue"
// 引入vuex
import Vuex from "vuex"
// 因为vuex是个插件，vue里面使用插件 都是通过vue.use()
Vue.use(Vuex);

import state from './state'
import mutations from './mutations'
// 最后 我们导出  vuex创建的仓库
export default new Vuex.Store({
    // 仓库里面一般有个state的内容，存放公用的数据
    state,
    /*actions:{
        changeCity(ctx,city){
            // ctx上下文
            // console.log(city);
            // ctx可以通过commit方法 打通mutations
            ctx.commit('changeCity',city);
        }
    },*/
    mutations,
    // 类似于计算属性
    // 当我们需要根据 state的数据，计算出新的数据的时候，可以避免数据的冗余
    getters:{
        doubleCity(state){
            return state.city+' '+state.city
        }
    }
})